﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using BolaoDNA.DomainModel;
using Web.Generics;

namespace BolaoDNA.WebMvc.ViewModels
{
    public class BolaoDetailsViewModel
    {
        public BolaoDetailsViewModel()
        {
            this.PalpitesFuturos = new List<Palpite>();
            this.PalpiteSalvo = false;
        }

        public Bolao Instance { get; set; }

        public Boolean PalpiteSalvo { get; set; }

        public String Participante { get; set; }
        public Int32 Pontos { get; set; }
        
        public Boolean IsParticipante { get; set; }

        public IList<Palpite> PalpitesFuturos { get; set; }
        public IList<InscricaoBolao> Ranking { get; set; }

        public SeusPalpitesGrid SeusPalpites { get; set; }
        public UltimosJogosGrid UltimosJogos { get; set; }
    }

    public class SeusPalpitesGrid : FilterParameters
    {
        public SeusPalpitesGrid()
        {
            this.Palpites = new List<SeusPalpites>();
        }

        public IList<SeusPalpites> Palpites { get; set; }
        public class SeusPalpites
        {
            public Int32 IdJogo { get; set; }
            public String Data { get; set; }
            public String Hora { get; set; }
            public String EquipeCasa { get; set; }
            public String EquipeVisitante { get; set; }
            public Int32? PalpiteCasa { get; set; }
            public Int32? PalpiteVisitante { get; set; }
            public String Palpite { get; set; }
        }
    }

    public class UltimosJogosGrid : FilterParameters
    {
        public IList<UltimosJogos> Jogos { get; set; }

        public class UltimosJogos
        {
            public String Data { get; set; }
            public String Hora { get; set; }
            public String EquipeCasa { get; set; }
            public String EquipeVisitante { get; set; }
            public String PlacarCasa { get; set; }
            public String PlacarVisitante { get; set; }
            public String Pontuacao { get; set; }
        }
    }
}
